package classes;

import Telas.TelaLogin;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.SplashScreen;
import java.awt.Toolkit;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JWindow;

/** Está classe cria uma janela de Splash que será carregada quando o programa for iniciado
 * @version 1.0
 * @author grupo
 */
public class Splash extends JWindow {
    
    private int duration;
    
    /** Contrutor do spalsh que tem como parâmetro a duração 
     *
     * @param d duração do splash
     */
    public Splash(int d) {
        duration = d;
    }
    
    /** método que carrega o splash
     *
     */
    public void showSplash() {        
        JPanel content = (JPanel)getContentPane();
        content.setBackground(new Color(255,255,255,150)); 
        
        // Configura a posição e o tamanho da janela
        int width = 600;
        int height =350;
        Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
        int x = (screen.width-width)/2;
        int y = (screen.height-height)/2;
        setBounds(x,y,width,height);
        
        // Constrói o splash screen
        JLabel label = new JLabel(new ImageIcon("src/imagens/banner.gif"));
        
        content.add(label, BorderLayout.CENTER);
        
        setVisible(true);
        
        // Espera ate que os recursos estejam carregados
        try { Thread.sleep(duration); } catch (Exception e) {}        
        setVisible(false);        
    }
    
    /** método que define o splash como visivel
     *
     */
    public void showSplashAndExit() {        
        showSplash();
        new TelaLogin().setVisible(true);
        //System.exit(0);        
    }
    
}
